﻿using System;
using System.Collections.Generic;
using AgileBoard.Domain;

namespace AgileBoard.Demo
{
    public class FakeFeelingsData
    {
        private static readonly string[] arrFeelings = new string[20]
                                                           {
                                                               "Good", "Bad", "Normal", "Normal", "Good", "Bad",
                                                               "Normal", "Good", "Normal",
                                                               "Good", "Good", "Bad",
                                                               "Bad", "Bad", "Bad",
                                                               "Normal", "Normal", "Good",
                                                               "Good", "Normal"
                                                           };

        private static readonly Random rnd = new Random(20);

        public static List<Feelings> CreateTestFeelingss()
        {
            var feelings = new List<Feelings>
                               {
                               };

            for (int i = 0; i < 10; i++)
            {
                var sampleFeelings = new Feelings
                                         {
                                             UserMoodID = Guid.NewGuid(),
                                             UserID = "2EBDBC36-3585-47b3-8709-BE3184956938",
                                             Feeling = "Good",
                                             Date = DateTime.Now.AddDays(i),
                                             CreateTime = DateTime.Now
                                         };

                feelings.Add(sampleFeelings);
            }

            return feelings;
        }

        public static List<Feelings> CreateManagerFeelings()
        {
            var feelings = new List<Feelings>();

            var startDate = new DateTime(DateTime.Now.Year, DateTime.Now.Month - 1, 1);

            int count = DateTime.DaysInMonth(startDate.Year, startDate.Month) + DateTime.Now.Day;

            for (int i = 0; i < count; i++)
            {
                int num = rnd.Next(1, 19);
                var sampleFeelings = new Feelings
                                         {
                                             UserMoodID = Guid.NewGuid(),
                                             UserID = "0D21139B-2134-49c4-AC2B-082A85FC3706",
                                             Feeling = arrFeelings[num],
                                             Date = startDate.AddDays(i),
                                             CreateTime = DateTime.Now
                                         };

                feelings.Add(sampleFeelings);
            }

            return feelings;
        }


        public static List<Feelings> CreateLeadDevFeelings()
        {
            var feelings = new List<Feelings>();

            var startDate = new DateTime(DateTime.Now.Year, DateTime.Now.Month - 1, 1);

            int count = DateTime.DaysInMonth(startDate.Year, startDate.Month) + DateTime.Now.Day;

            for (int i = 0; i < count; i++)
            {
                int num = rnd.Next(1, 19);
                var sampleFeelings = new Feelings
                                         {
                                             UserMoodID = Guid.NewGuid(),
                                             UserID = "B7AA9AE0-B4DA-4576-B88A-8BBE27CE38F6",
                                             Feeling = arrFeelings[num],
                                             Date = startDate.AddDays(i),
                                             CreateTime = DateTime.Now
                                         };

                feelings.Add(sampleFeelings);
            }

            return feelings;
        }


        public static List<Feelings> CreateDevFeelings()
        {
            var feelings = new List<Feelings>();

            var startDate = new DateTime(DateTime.Now.Year, DateTime.Now.Month - 1, 1);

            int count = DateTime.DaysInMonth(startDate.Year, startDate.Month) + DateTime.Now.Day;

            for (int i = 0; i < count; i++)
            {
                int num = rnd.Next(1, 19);
                var sampleFeelings = new Feelings
                                         {
                                             UserMoodID = Guid.NewGuid(),
                                             UserID = "BAECFB10-C382-4ec8-BFC6-B85451688B51",
                                             Feeling = arrFeelings[num],
                                             Date = startDate.AddDays(i),
                                             CreateTime = DateTime.Now
                                         };

                feelings.Add(sampleFeelings);
            }

            return feelings;
        }

        public static Feelings ManagerFeeling()
        {
            var demo = new Feelings
                           {
                               UserMoodID = Guid.NewGuid(),
                               UserID = "0D21139B-2134-49c4-AC2B-082A85FC3706",
                               Feeling = "Normal",
                               Date = DateTime.Now.RemoveDays(1),
                               CreateTime = DateTime.Now
                           };

            return demo;
        }

        public static Feelings ManagerFeeling2()
        {
            var Default = new Feelings
                              {
                                  UserMoodID = Guid.NewGuid(),
                                  UserID = "0D21139B-2134-49c4-AC2B-082A85FC3706",
                                  Feeling = "Bad",
                                  Date = DateTime.Now.RemoveDays(2),
                                  CreateTime = DateTime.Now
                              };

            return Default;
        }

        public static Feelings ManagerFeeling3()
        {
            var Default = new Feelings
                              {
                                  UserMoodID = Guid.NewGuid(),
                                  UserID = "0D21139B-2134-49c4-AC2B-082A85FC3706",
                                  Feeling = "Good",
                                  Date = DateTime.Now.RemoveDays(3),
                                  CreateTime = DateTime.Now
                              };

            return Default;
        }

        public static Feelings LDevFeeling1()
        {
            var demo = new Feelings
                           {
                               UserMoodID = Guid.NewGuid(),
                               UserID = "B7AA9AE0-B4DA-4576-B88A-8BBE27CE38F6",
                               Feeling = "Normal",
                               Date = DateTime.Now.RemoveDays(1),
                               CreateTime = DateTime.Now
                           };

            return demo;
        }

        public static Feelings LDevFeeling2()
        {
            var Default = new Feelings
                              {
                                  UserMoodID = Guid.NewGuid(),
                                  UserID = "B7AA9AE0-B4DA-4576-B88A-8BBE27CE38F6",
                                  Feeling = "Normal",
                                  Date = DateTime.Now.RemoveDays(2),
                                  CreateTime = DateTime.Now
                              };

            return Default;
        }

        public static Feelings LDevFeeling3()
        {
            var Default = new Feelings
                              {
                                  UserMoodID = Guid.NewGuid(),
                                  UserID = "B7AA9AE0-B4DA-4576-B88A-8BBE27CE38F6",
                                  Feeling = "Normal",
                                  Date = DateTime.Now.RemoveDays(3),
                                  CreateTime = DateTime.Now
                              };

            return Default;
        }


        public static Feelings DevFeeling1()
        {
            var demo = new Feelings
                           {
                               UserMoodID = Guid.NewGuid(),
                               UserID = "BAECFB10-C382-4ec8-BFC6-B85451688B51",
                               Feeling = "Good",
                               Date = DateTime.Now.RemoveDays(1),
                               CreateTime = DateTime.Now
                           };

            return demo;
        }

        public static Feelings DevFeeling2()
        {
            var Default = new Feelings
                              {
                                  UserMoodID = Guid.NewGuid(),
                                  UserID = "BAECFB10-C382-4ec8-BFC6-B85451688B51",
                                  Feeling = "Good",
                                  Date = DateTime.Now.RemoveDays(2),
                                  CreateTime = DateTime.Now
                              };

            return Default;
        }

        public static Feelings DevFeeling3()
        {
            var Default = new Feelings
                              {
                                  UserMoodID = Guid.NewGuid(),
                                  UserID = "BAECFB10-C382-4ec8-BFC6-B85451688B51",
                                  Feeling = "Good",
                                  Date = DateTime.Now.RemoveDays(3),
                                  CreateTime = DateTime.Now
                              };

            return Default;
        }
    }
}